<?php

namespace app\admin\controller;

// use app\admin\controller\Auth;

class Inlet extends Auth
{

    // 初始入口
    public function inlet()
    {
        if ($this->request->url() == "/" . setAdminPath()) {
            return redirect("/" . setAdminPath() . "/index");
        }
        // 初始化访问页面
        $sonpage = input('sonpage') ? input('sonpage') : "index";
        // 获取实例对象命名空间名
        $use = __NAMESPACE__ . '\\' . ucfirst($sonpage);
        // 异常捕获
        try {
            // 实例化方法
            $method = new $use;
        } catch (\Throwable $th) {
            // 是否AJAX请求
            if (!$this->request->isAjax()) {
                exit($this->request->ip());
            } else {
                exit(json(['ip' => $this->request->ip()]));
            }
        }

        // 判断是否单独定义方法
        if (method_exists($method, $sonpage)) {
            // 载入相关操作
            return $method->$sonpage();
        } else {
            // 是否AJAX请求
            if (!$this->request->isAjax()) {
                return view("/404");
            } else {
                return json(['code' => '404', "msg" => "页面不存在"]);
            }
        }
    }
}
